System and method for high-sensitivity sensor

ABSTRACT

A sensor unit that includes at least one sensor configured to measure an ambient condition is described. The controller can be configured to receive instructions, to report a notice level when the controller determines that data measured by the at least one sensor fails a report threshold test corresponding to a report threshold value. The controller can also be configured to obtain a plurality of calibration measurements from the at least one sensor during a calibration period and to adjust the threshold based on the calibration measurements. The controller can be configured to compute a first threshold level corresponding to background noise and a second threshold level corresponding to sensor noise, and to compute the report threshold value from the second threshold. In one embodiment, the sensor unit adjusts one or more of the thresholds based on ambient temperature.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 12/624,838, filed Nov. 24, 2009, and entitled, “SYSTEM AND METHOD FOR HIGH-SENSITIVITY SENSOR” now U.S. Pat. No. 8,638,215, which is a continuation of U.S. patent application Ser. No. 11/494,988, filed Jul. 28, 2006, and entitled “SYSTEM AND METHOD FOR HIGH-SENSITIVITY SENSOR” now U.S. Pat. No. 7,623,028, which is a continuation-in-part of U.S. patent application Ser. No. 10/856,390, filed May 27, 2004, and entitled “WIRELESS SENSOR SYSTEM”, now U.S. Pat. No. 7,102,505. The entire disclosures of the above applications are hereby incorporated by reference, for all purposes, as if fully set forth herein.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a sensor with improved sensitivity for use in a wired or wireless sensor system for monitoring potentially dangerous or costly conditions, such as, for example, smoke, temperature, water, gas and the like.

2. Description of the Related Art

Maintaining and protecting a building or complex is difficult and costly. Some conditions, such as fires, gas leaks, etc., are a danger to the occupants and the structure. Other malfunctions, such as water leaks in roofs, plumbing, etc., are not necessarily dangerous for the occupants, but can, nevertheless, cause considerable damage. In many cases, an adverse condition such as water leakage, fire, etc., is not detected in the early stages when the damage and/or danger is relatively small. Sensors can be used to detect such adverse conditions, but sensors present their own set of problems. For example, adding sensors, such as, for example, smoke detectors, water sensors, and the like in an existing structure can be prohibitively expensive due to the cost of installing wiring between the remote sensors and a centralized monitoring device used to monitor the sensors. Adding wiring to provide power to the sensors further increases the cost. Moreover, with regard to fire sensors, most fire departments will not allow automatic notification of the fire department based on the data from a smoke detector alone. Most fire departments require that a specific temperature rate-of-rise be detected before an automatic fire alarm system can notify the fire department. Unfortunately, detecting fire by temperature rate-of-rise generally means that the fire is not detected until it is too late to prevent major damage.

Moreover, most sensors, such as smoke sensors, are configured with a fixed threshold. If the sensed quantity (e.g., smoke level) rises above the threshold, then an alarm is triggered. Unfortunately, the threshold level must be placed relatively high to avoid false alarms and to allow for natural aging of components, and to allow for natural variations in the ambient environment. Setting the threshold to a relatively high level avoids false alarms, but reduces the effectiveness of the sensor and can unnecessarily put people and property at risk.

SUMMARY

These and other problems are solved by a sensor unit that includes at least one sensor configured to measure an ambient condition and a controller. The controller can be configured to receive instructions, to report a notice level when the controller determines that data measured by the at least one sensor fails a report threshold test corresponding to a report threshold value. The controller can also be configured to obtain a plurality of calibration measurements from the at least one sensor during a calibration period and to adjust the threshold based on the calibration measurements. The controller can be configured to compute a first threshold level corresponding to background noise and a second threshold level corresponding to sensor noise, and to compute the report threshold value from the second threshold. In one embodiment, the sensor unit adjusts one or more of the thresholds based on ambient temperature.

In one embodiment, the sensor unit includes a fan controlled by the controller. The fan is configured to improve air exchange between a sensor chamber and ambient air. In one embodiment, the controller operates the fan during one or more measurement periods. In one embodiment, the controller operates the fan prior to one or more measurement periods.

In one embodiment, the controller reports a diagnostic error at least when the second threshold does not exceed the first threshold. In one embodiment, the controller reports a diagnostic error at least when the second threshold does not exceed the first threshold. In one embodiment, the controller measures the first threshold and the second threshold in response to a command. In one embodiment, the controller measures the first threshold and the second threshold at power-up (e.g., when a power source, such as, for example, batteries, line power etc., are provided to the sensor unit).

In one embodiment, the sensor system provides an adjustable threshold level for the sensed quantity. The adjustable threshold allows the sensor to adjust to ambient conditions, aging of components, and other operational variations while still providing a relatively sensitive detection capability for hazardous conditions. The adjustable threshold sensor can operate for an extended period of operability without maintenance or recalibration. In one embodiment, the sensor is self-calibrating and runs through a calibration sequence at startup or at periodic intervals. In one embodiment, the adjustable threshold sensor is used in an intelligent sensor system that includes one or more intelligent sensor units and a base unit that can communicate with the sensor units. When one or more of the sensor units detects an anomalous condition (e.g., smoke, fire, water, etc.) the sensor unit communicates with the base unit and provides data regarding the anomalous condition. The base unit can contact a supervisor or other responsible person by a plurality of techniques, such as, telephone, pager, cellular telephone, Internet (and/or local area network), etc. In one embodiment, one or more wireless repeaters are used between the sensor units and the base unit to extend the range of the system and to allow the base unit to communicate with a larger number of sensors.

In one embodiment, the adjustable-threshold sensor sets a threshold level according to an average value of the sensor reading. In one embodiment, the average value is a relatively long-term average. In one embodiment, the average is a time-weighted average wherein recent sensor readings used in the averaging process are weighted differently than less recent sensor readings. The average is used to set the threshold level. When the sensor reading rises above the threshold level, the sensor indicates an alarm condition. In one embodiment, the sensor indicates an alarm condition when the sensor reading rises above the threshold value for a specified period of time. In one embodiment, the sensor indicates an alarm condition when a statistical number of sensor readings (e.g., 3 of 2, 5 of 3, 10 of 7, etc.) are above the threshold level. In one embodiment, the sensor indicates various levels of alarm (e.g., notice, alert, alarm) based on how far above the threshold the sensor reading has risen and/or how rapidly the sensor reading has risen.

In one embodiment, the sensor system includes a number of sensor units located throughout a building that sense conditions and report anomalous results back to a central reporting station. The sensor units measure conditions that might indicate a fire, water leak, etc. The sensor units report the measured data to the base unit whenever the sensor unit determines that the measured data is sufficiently anomalous to be reported. The base unit can notify a responsible person such as, for example, a building manager, building owner, private security service, etc. In one embodiment, the sensor units do not send an alarm signal to the central location. Rather, the sensors send quantitative measured data (e.g., smoke density, temperature rate of rise, etc.) to the central reporting station.

In one embodiment, the sensor system includes a battery-operated sensor unit that detects a condition, such as, for example, smoke, temperature, humidity, moisture, water, water temperature, carbon monoxide, natural gas, propane gas, other flammable gases, radon, poison gasses, etc. The sensor unit is placed in a building, apartment, office, residence, etc. In order to conserve battery power, the sensor is normally placed in a low-power mode. In one embodiment, while in the low-power mode, the sensor unit takes regular sensor readings, adjusts the threshold level, and evaluates the readings to determine if an anomalous condition exists. If an anomalous condition is detected, then the sensor unit “wakes up” and begins communicating with the base unit or with a repeater. At programmed intervals, the sensor also “wakes up” and sends status information to the base unit (or repeater) and then listens for commands for a period of time.

In one embodiment, the sensor unit is bi-directional and configured to receive instructions from the central reporting station (or repeater). Thus, for example, the central reporting station can instruct the sensor to: perform additional measurements; go to a standby mode; wake up; report battery status; change wake-up interval; run self-diagnostics and report results; report its threshold level, change its threshold level, change its threshold calculation equation, change its alarm calculation equation, etc. In one embodiment, the sensor unit also includes a tamper switch. When tampering with the sensor is detected, the sensor reports such tampering to the base unit. In one embodiment, the sensor reports its general health and status to the central reporting station on a regular basis (e.g., results of self-diagnostics, battery health, etc.).

In one embodiment, the sensor unit provides two wake-up modes, a first wake-up mode for taking measurements (and reporting such measurements if deemed necessary), and a second wake-up mode for listening for commands from the central reporting station. The two wake-up modes, or combinations thereof, can occur at different intervals.

In one embodiment, the sensor units use spread-spectrum techniques to communicate with the base unit and/or the repeater units. In one embodiment, the sensor units use frequency-hopping spread-spectrum. In one embodiment, each sensor unit has an Identification code (ID) and the sensor units attaches its ID to outgoing communication packets. In one embodiment, when receiving wireless data, each sensor unit ignores data that is addressed to other sensor units.

The repeater unit is configured to relay communications traffic between a number of sensor units and the base unit. The repeater units typically operate in an environment with several other repeater units and thus, each repeater unit contains a database (e.g., a lookup table) of sensor IDs. During normal operation, the repeater only communicates with designated wireless sensor units whose IDs appears in the repeater's database. In one embodiment, the repeater is battery-operated and conserves power by maintaining an internal schedule of when its designated sensors are expected to transmit and going to a low-power mode when none of its designated sensor units is scheduled to transmit. In one embodiment, the repeater uses spread-spectrum to communicate with the base unit and the sensor units. In one embodiment, the repeater uses frequency-hopping spread-spectrum to communicate with the base unit and the sensor units. In one embodiment, each repeater unit has an ID and the repeater unit attaches its ID to outgoing communication packets that originate in the repeater unit. In one embodiment, each repeater unit ignores data that is addressed to other repeater units or to sensor units not serviced by the repeater.

In one embodiment, the repeater is configured to provide bi-directional communication between one or more sensors and a base unit. In one embodiment, the repeater is configured to receive instructions from the central reporting station (or repeater). Thus, for example, the central reporting station can instruct the repeater to: send commands to one or more sensors; go to standby mode; “wake up”; report battery status; change wake-up interval; run self-diagnostics and report results; etc.

The base unit is configured to receive measured sensor data from a number of sensor units. In one embodiment, the sensor information is relayed through the repeater units. The base unit also sends commands to the repeater units and/or sensor units. In one embodiment, the base unit includes a diskless PC that runs off of a CD-ROM, flash memory, DVD, or other read-only device, etc. When the base unit receives data from a wireless sensor indicating that there may be an emergency condition (e.g., a fire or excess smoke, temperature, water, flammable gas, etc.) the base unit will attempt to notify a responsible party (e.g., a building manager) by several communication channels (e.g., telephone, Internet, pager, cell phone, etc.). In one embodiment, the base unit sends instructions to place the wireless sensor in an alert mode (inhibiting the wireless sensor's low-power mode). In one embodiment, the base unit sends instructions to activate one or more additional sensors near the first sensor.

In one embodiment, the base unit maintains a database of the health, battery status, signal strength, and current operating status of all of the sensor units and repeater units in the wireless sensor system. In one embodiment, the base unit automatically performs routine maintenance by sending commands to each sensor to run a self-diagnostic and report the results. The base unit collects such diagnostic results. In one embodiment, the base unit sends instructions to each sensor telling the sensor how long to wait between “wakeup” intervals. In one embodiment, the base unit schedules different wakeup intervals to different sensors based on the sensor's health, battery health, location, etc. In one embodiment, the base unit sends instructions to repeaters to route sensor information around a failed repeater.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows sensor system that includes a plurality of sensor units that communicate with a base unit through a number of repeater units

FIG. 2 is a block diagram of a sensor unit.

FIG. 3 is a block diagram of a repeater unit.

FIG. 4 is a block diagram of the base unit.

FIG. 5 shows a network communication packet used by the sensor units, repeater units, and the base unit.

FIG. 6 is a flowchart showing operation of a sensor unit that provides relatively continuous monitoring.

FIG. 7 is a flowchart showing operation of a sensor unit that provides periodic monitoring.

FIG. 8 shows how the sensor system can be used to detect water leaks.

FIG. 9 shows an optical smoke sensor configured to operate at a relatively high sensitivity.

FIG. 10 shows a emitter drive pulse and photo-sensor outputs during dark time and during pulse time.

FIG. 11 shows a calibration sequence for the optical smoke sensor of FIG. 9.

FIG. 12 shows one embodiment of temperature compensation in an optical smoke detector.

DETAILED DESCRIPTION

FIG. 1 shows a sensor system 100 that includes a plurality of sensor units 102-106 that communicate with a base unit 112 through a number of repeater units 110-111. The sensor units 102-106 are located throughout a building 101. Sensor units 102-104 communicate with the repeater 110. Sensor units 105-106 communicate with the repeater 111. The repeaters 110-111 communicate with the base unit 112. The base unit 112 communicates with a monitoring computer system 113 through a computer network connection such as, for example, Ethernet, wireless Ethernet, firewire port, Universal Serial Bus (USB) port, bluetooth, etc. The computer system 113 contacts a building manager, maintenance service, alarm service, or other responsible personnel 120 using one or more of several communication systems such as, for example, telephone 121, pager 122, cellular telephone 123 (e.g., direct contact, voicemail, text, etc.), and/or through the Internet and/or local area network 124 (e.g., through email, instant messaging, network communications, etc.). In one embodiment, multiple base units 112 are provided to the monitoring computer 113. In one embodiment, the monitoring computer 113 is provided to more than one computer monitors, thus, allowing more data to be displayed than can conveniently be displayed on a single monitor. In one embodiment, the monitoring computer 113 is provided to multiple monitors located in different locations, thus allowing the data from the monitoring computer 113 to be displayed in multiple locations.

The sensor units 102-106 include sensors to measure conditions, such as, for example, smoke, temperature, moisture, water, water temperature, humidity, carbon monoxide, natural gas, propane gas, security alarms, intrusion alarms (e.g., open doors, broken windows, open windows, and the like), other flammable gases, radon, poison gasses, etc. Different sensor units can be configured with different sensors or with combinations of sensors. Thus, for example, in one installation the sensor units 102 and 104 could be configured with smoke and/or temperature sensors while the sensor unit 103 could be configured with a humidity sensor.

The discussion that follows generally refers to the sensor unit 102 as an example of a sensor unit, with the understanding that the description of the sensor unit 102 can be applied to many sensor units. Similarly, the discussion generally refers to the repeater 110 by way of example, and not limitation. It will also be understood by one of ordinary skill in the art that repeaters are useful for extending the range of the sensor units 102-106 but are not required in all embodiments. Thus, for example, in one embodiment, one or more of the sensor units 102-106 can communicate directly with the base unit 112 without going through a repeater. It will also be understood by one of ordinary skill in the art that FIG. 1 shows only five sensor units (102-106) and two repeater units (110-111) for purposes of illustration and not by way of limitation. An installation in a large apartment building or complex would typically involve many sensor units and repeater units. Moreover, one of ordinary skill in the art will recognize that one repeater unit can service relatively many sensor units. In one embodiment, the sensor units 102 can communicate directly with the base unit 112 without going through a repeater 111.

When the sensor unit 102 detects an anomalous condition (e.g., smoke, fire, water, etc.) the sensor unit communicates with the appropriate repeater unit 110 and provides data regarding the anomalous condition. The repeater unit 110 forwards the data to the base unit 112, and the base unit 112 forwards the information to the computer 113. The computer 113 evaluates the data and takes appropriate action. If the computer 113 determines that the condition is an emergency (e.g., fire, smoke, large quantities of water), then the computer 113 contacts the appropriate personnel 120. If the computer 113 determines that the situation warrants reporting, but is not an emergency, then the computer 113 logs the data for later reporting. In this way, the sensor system 100 can monitor the conditions in and around the building 101.

In one embodiment, the sensor unit 102 has an internal power source (e.g., battery, solar cell, fuel cell, etc.). In order to conserve power, the sensor unit 102 is normally placed in a low-power mode. In one embodiment, using sensors that require relatively little power, while in the low-power mode the sensor unit 102 takes regular sensor readings and evaluates the readings to determine if an anomalous condition exists. In one embodiment, using sensors that require relatively more power, while in the low-power mode, the sensor unit 102 takes and evaluates sensor readings at periodic intervals. If an anomalous condition is detected, then the sensor unit 102 “wakes up” and begins communicating with the base unit 112 through the repeater 110. At programmed intervals, the sensor unit 102 also “wakes up” and sends status information (e.g., power levels, self diagnostic information, etc.) to the base unit (or repeater) and then listens for commands for a period of time. In one embodiment, the sensor unit 102 also includes a tamper detector. When tampering with the sensor unit 102 is detected, the sensor unit 102 reports such tampering to the base unit 112.

In one embodiment, the sensor unit 102 provides bi-directional communication and is configured to receive data and/or instructions from the base unit 112. Thus, for example, the base unit 112 can instruct the sensor unit 102 to perform additional measurements, to go to a standby mode, to wake up, to report battery status, to change wake-up interval, to run self-diagnostics and report results, etc. In one embodiment, the sensor unit 102 reports its general health and status on a regular basis (e.g., results of self-diagnostics, battery health, etc.)

In one embodiment, the sensor unit 102 provides two wake-up modes, a first wake-up mode for taking measurements (and reporting such measurements if deemed necessary), and a second wake-up mode for listening for commands from the central reporting station. The two wake-up modes, or combinations thereof, can occur at different intervals.

In one embodiment, the sensor unit 102 uses spread-spectrum techniques to communicate with the repeater unit 110. In one embodiment, the sensor unit 102 uses frequency-hopping spread-spectrum. In one embodiment, the sensor unit 102 has an address or identification (ID) code that distinguishes the sensor unit 102 from the other sensor units. The sensor unit 102 attaches its ID to outgoing communication packets so that transmissions from the sensor unit 102 can be identified by the repeater 110. The repeater 110 attaches the ID of the sensor unit 102 to data and/or instructions that are transmitted to the sensor unit 102. In one embodiment, the sensor unit 102 ignores data and/or instructions that are addressed to other sensor units.

In one embodiment, the sensor unit 102 includes a reset function. In one embodiment, the reset function is activated by the reset switch 208. In one embodiment, the reset function is active for a prescribed interval of time. During the reset interval, the transceiver 203 is in a receiving mode and can receive the identification code from an external programmer. In one embodiment, the external programmer wirelessly transmits a desired identification code. In one embodiment, the identification code is programmed by an external programmer that is connected to the sensor unit 102 through an electrical connector. In one embodiment, the electrical connection to the sensor unit 102 is provided by sending modulated control signals (power line carrier signals) through a connector used to connect the power source 206. In one embodiment, the external programmer provides power and control signals. In one embodiment, the external programmer also programs the type of sensor(s) installed in the sensor unit. In one embodiment, the identification code includes an area code (e.g., apartment number, zone number, floor number, etc.) and a unit number (e.g., unit 1, 2, 3, etc.).

In one embodiment, the sensor communicates with the repeater on the 900 MHz band. This band provides good transmission through walls and other obstacles normally found in and around a building structure. In one embodiment, the sensor communicates with the repeater on bands above and/or below the 900 MHz band. In one embodiment, the sensor, repeater, and/or base unit listens to a radio frequency channel before transmitting on that channel or before beginning transmission. If the channel is in use, (e.g., by another device such as another repeater, a cordless telephone, etc.) then the sensor, repeater, and/or base unit changes to a different channel. In one embodiment, the sensor, repeater, and/or base unit coordinate frequency hopping by listening to radio frequency channels for interference and using an algorithm to select a next channel for transmission that avoids the interference. Thus, for example, in one embodiment, if a sensor senses a dangerous condition and goes into a continuous transmission mode, the sensor will test (e.g., listen to) the channel before transmission to avoid channels that are blocked, in use, or jammed. In one embodiment, the sensor continues to transmit data until it receives an acknowledgement from the base unit that the message has been received. In one embodiment, the sensor transmits data having a normal priority (e.g., status information) and does not look for an acknowledgement, and the sensor transmits data having elevated priority (e.g., excess smoke, temperature, etc.) until an acknowledgement is received.

The repeater unit 110 is configured to relay communications traffic between the sensor 102 (and similarly, the sensor units 103-104) and the base unit 112. The repeater unit 110 typically operates in an environment with several other repeater units (such as the repeater unit 111 in FIG. 1) and thus, the repeater unit 110 contains a database (e.g., a lookup table) of sensor unit IDs. In FIG. 1, the repeater 110 has database entries for the IDs of the sensors 102-104, and thus, the sensor 110 will only communicate with sensor units 102-104. In one embodiment, the repeater 110 has an internal power source (e.g., battery, solar cell, fuel cell, etc.) and conserves power by maintaining an internal schedule of when the sensor units 102-104 are expected to transmit. In one embodiment, the repeater unit 110 goes to a low-power mode when none of its designated sensor units is scheduled to transmit. In one embodiment, the repeater 110 uses spread-spectrum techniques to communicate with the base unit 112 and with the sensor units 102-104. In one embodiment, the repeater 110 uses frequency-hopping spread-spectrum to communicate with the base unit 112 and the sensor units 102-104. In one embodiment, the repeater unit 110 has an address or identification (ID) code and the repeater unit 110 attaches its address to outgoing communication packets that originate in the repeater (that is, packets that are not being forwarded). In one embodiment, the repeater unit 110 ignores data and/or instructions that are addressed to other repeater units or to sensor units not serviced by the repeater 110.

In one embodiment, the base unit 112 communicates with the sensor unit 102 by transmitting a communication packet addressed to the sensor unit 102. The repeaters 110 and 111 both receive the communication packet addressed to the sensor unit 102. The repeater unit 111 ignores the communication packet addressed to the sensor unit 102. The repeater unit 110 transmits the communication packet addressed to the sensor unit 102. In one embodiment, the sensor unit 102, the repeater unit 110, and the base unit 112 communicate using Frequency-Hopping Spread Spectrum (FHSS), also known as channel-hopping.

Frequency-hopping wireless systems offer the advantage of avoiding other interfering signals and avoiding collisions. Moreover, there are regulatory advantages given to systems that do not transmit continuously at one frequency. Channel-hopping transmitters change frequencies after a period of continuous transmission, or when interference is encountered. These systems may have higher transmit power and relaxed limitations on in-band spurs. FCC regulations limit transmission time on one channel to 400 milliseconds (averaged over 10-20 seconds depending on channel bandwidth) before the transmitter must change frequency. There is a minimum frequency step when changing channels to resume transmission. If there are 25 to 49 frequency channels, regulations allow effective radiated power of 24 dBm, spurs must be −20 dBc, and harmonics must be −41.2 dBc. With 50 or more channels, regulations allow effective radiated power to be up to 30 dBm.

In one embodiment, the sensor unit 102, the repeater unit 110, and the base unit 112 communicate using FHSS wherein the frequency hopping of the sensor unit 102, the repeater unit 110, and the base unit 112 are not synchronized such that at any given moment, the sensor unit 102 and the repeater unit 110 are on different channels. In such a system, the base unit 112 communicates with the sensor unit 102 using the hop frequencies synchronized to the repeater unit 110 rather than the sensor unit 102. The repeater unit 110 then forwards the data to the sensor unit using hop frequencies synchronized to the sensor unit 102. Such a system largely avoids collisions between the transmissions by the base unit 112 and the repeater unit 110.

In one embodiment, the sensor units 102-106 all use FHSS and the sensor units 102-106 are not synchronized. Thus, at any given moment, it is unlikely that any two or more of the sensor units 102-106 will transmit on the same frequency. In this manner, collisions are largely avoided. In one embodiment, collisions are not detected but are tolerated by the system 100. If a collision does occur, data lost due to the collision is effectively re-transmitted the next time the sensor units transmit sensor data. When the sensor units 102-106 and repeater units 110-111 operate in asynchronous mode, then a second collision is highly unlikely because the units causing the collisions have hopped to different channels. In one embodiment, the sensor units 102-106, repeater units 110-111, and the base unit 112 use the same hop rate. In one embodiment, the sensor units 102-106, repeater units 110-111, and the base unit 112 use the same pseudo-random algorithm to control channel hopping, but with different starting seeds. In one embodiment, the starting seed for the hop algorithm is calculated from the ID of the sensor units 102-106, repeater units 110-111, or the base unit 112.

In an alternative embodiment, the base unit communicates with the sensor unit 102 by sending a communication packet addressed to the repeater unit 110, where the packet sent to the repeater unit 110 includes the address of the sensor unit 102. The repeater unit 102 extracts the address of the sensor unit 102 from the packet and creates and transmits a packet addressed to the sensor unit 102.

In one embodiment, the repeater unit 110 is configured to provide bi-directional communication between its sensors and the base unit 112. In one embodiment, the repeater 110 is configured to receive instructions from the base unit 110. Thus, for example, the base unit 112 can instruct the repeater to: send commands to one or more sensors; go to standby mode; “wake up”; report battery status; change wake-up interval; run self-diagnostics and report results; etc.

The base unit 112 is configured to receive measured sensor data from a number of sensor units either directly, or through the repeaters 110-111. The base unit 112 also sends commands to the repeater units 110-111 and/or to the sensor units 102-106. In one embodiment, the base unit 112 communicates with a diskless computer 113 that runs off of a CD-ROM. When the base unit 112 receives data from a sensor unit 102-106 indicating that there may be an emergency condition (e.g., a fire or excess smoke, temperature, water, etc.) the computer 113 will attempt to notify the responsible party 120.

In one embodiment, the computer 112 maintains a database of the health, power status (e.g., battery charge), and current operating status of all of the sensor units 102-106 and the repeater units 110-111. In one embodiment, the computer 113 automatically performs routine maintenance by sending commands to each sensor unit 102-106 to run a self-diagnostic and report the results. The computer 113 collects and logs such diagnostic results. In one embodiment, the computer 113 sends instructions to each sensor unit 102-106 telling the sensor how long to wait between “wakeup” intervals. In one embodiment, the computer 113 schedules different wakeup intervals to different sensor unit 102-106 based on the sensor unit's health, power status, location, etc. In one embodiment, the computer 113 schedules different wakeup intervals to different sensor unit 102-106 based on the type of data and urgency of the data collected by the sensor unit (e.g., sensor units that have smoke and/or temperature sensors produce data that should be checked relatively more often than sensor units that have humidity or moisture sensors). In one embodiment, the base unit sends instructions to repeaters to route sensor information around a failed repeater.

In one embodiment, the computer 113 produces a display that tells maintenance personnel which sensor units 102-106 need repair or maintenance. In one embodiment, the computer 113 maintains a list showing the status and/or location of each sensor according to the ID of each sensor.

In one embodiment, the sensor units 102-106 and/or the repeater units 110-111 measure the signal strength of the wireless signals received (e.g., the sensor unit 102 measures the signal strength of the signals received from the repeater unit 110, the repeater unit 110 measures the signal strength received from the sensor unit 102 and/or the base unit 112). The sensor units 102-106 and/or the repeater units 110-111 report such signal strength measurement back to the computer 113. The computer 113 evaluates the signal strength measurements to ascertain the health and robustness of the sensor system 100. In one embodiment, the computer 113 uses the signal strength information to re-route wireless communications traffic in the sensor system 100. Thus, for example, if the repeater unit 110 goes offline or is having difficulty communicating with the sensor unit 102, the computer 113 can send instructions to the repeater unit 111 to add the ID of the sensor unit 102 to the database of the repeater unit 111 (and similarly, send instructions to the repeater unit 110 to remove the ID of the sensor unit 102), thereby routing the traffic for the sensor unit 102 through the router unit 111 instead of the router unit 110.

FIG. 2 is a block diagram of the sensor unit 102. In the sensor unit 102, one or more sensors 201 and a transceiver 203 are provided to a controller 202. The controller 202 typically provides power, data, and control information to the sensor(s) 201 and the transceiver 203. A power source 206 is provided to the controller 202. An optional tamper sensor 205 is also provided to the controller 202. A reset device (e.g., a switch) 208 is proved to the controller 202. In one embodiment, an optional audio output device 209 is provided. In one embodiment, the sensor 201 is configured as a plug-in module that can be replaced relatively easily. In one embodiment, a temperature sensor 220 is provided to the controller 202. In one embodiment, the temperature sensor 220 is configured to measure ambient temperature.

In one embodiment, the transceiver 203 is based on a TRF 6901 transceiver chip from Texas Instruments, Inc. In one embodiment, the controller 202 is a conventional programmable microcontroller. In one embodiment, the controller 202 is based on a Field Programmable Gate Array (FPGA), such as, for example, provided by Xilinx Corp. In one embodiment, the sensor 201 includes an optoelectric smoke sensor with a smoke chamber. In one embodiment, the sensor 201 includes a thermistor. In one embodiment, the sensor 201 includes a humidity sensor. In one embodiment, the sensor 201 includes a sensor, such as, for example, a water level sensor, a water temperature sensor, a carbon monoxide sensor, a moisture sensor, a water flow sensor, natural gas sensor, propane sensor, etc.

The controller 202 receives sensor data from the sensor(s) 201. Some sensors 201 produce digital data. However, for many types of sensors 201, the sensor data is analog data. Analog sensor data is converted to digital format by the controller 202. In one embodiment, the controller evaluates the data received from the sensor(s) 201 and determines whether the data is to be transmitted to the base unit 112. The sensor unit 102 generally conserves power by not transmitting data that falls within a normal range. In one embodiment, the controller 202 evaluates the sensor data by comparing the data value to a threshold value (e.g., a high threshold, a low threshold, or a high-low threshold). If the data is outside the threshold (e.g., above a high threshold, below a low threshold, outside an inner range threshold, or inside an outer range threshold), then the data is deemed to be anomalous and is transmitted to the base unit 112. In one embodiment, the data threshold is programmed into the controller 202. In one embodiment, the data threshold is programmed by the base unit 112 by sending instructions to the controller 202. In one embodiment, the controller 202 obtains sensor data and transmits the data when commanded by the computer 113.

In one embodiment, the tamper sensor 205 is configured as a switch that detects removal of/or tampering with the sensor unit 102.

FIG. 3 is a block diagram of the repeater unit 110. In the repeater unit 110, a first transceiver 302 and a second transceiver 304 are provided to a controller 303. The controller 303 typically provides power, data, and control information to the transceivers 302, 304. A power source 306 is provided to the controller 303. An optional tamper sensor (not shown) is also provided to the controller 303.

When relaying sensor data to the base unit 112, the controller 303 receives data from the first transceiver 302 and provides the data to the second transceiver 304. When relaying instructions from the base unit 112 to a sensor unit, the controller 303 receives data from the second transceiver 304 and provides the data to the first transceiver 302. In one embodiment, the controller 303 conserves power by powering-down the transceivers 302, 304 during periods when the controller 303 is not expecting data. The controller 303 also monitors the power source 306 and provides status information, such as, for example, self-diagnostic information and/or information about the health of the power source 306, to the base unit 112. In one embodiment, the controller 303 sends status information to the base unit 112 at regular intervals. In one embodiment, the controller 303 sends status information to the base unit 112 when requested by the base unit 112. In one embodiment, the controller 303 sends status information to the base unit 112 when a fault condition (e.g., battery low) is detected.

In one embodiment, the controller 303 includes a table or list of identification codes for wireless sensor units 102. The repeater 110 forwards packets received from, or sent to, sensor units 102 in the list. In one embodiment, the repeater 110 receives entries for the list of sensor units from the computer 113. In one embodiment, the controller 303 determines when a transmission is expected from the sensor units 102 in the table of sensor units and places the repeater 110 (e.g., the transceivers 302, 304) in a low-power mode when no transmissions are expected from the transceivers on the list. In one embodiment, the controller 303 recalculates the times for low-power operation when a command to change reporting interval is forwarded to one of the sensor units 102 in the list (table) of sensor units or when a new sensor unit is added to the list (table) of sensor units.

FIG. 4 is a block diagram of the base unit 112. In the base unit 112, a transceiver 402 and a computer interface 404 are provided to a controller 403. The controller 403 typically provides data and control information to the transceivers 402 and to the interface. The interface 404 is provided to a port on the monitoring computer 113. The interface 404 can be a standard computer data interface, such as, for example, Ethernet, wireless Ethernet, firewire port, Universal Serial Bus (USB) port, bluetooth, etc.

FIG. 5 shows a communication packet 500 used by the sensor units, repeater units, and the base unit. The packet 500 includes a preamble portion 501, an address (or ID) portion 502, a data payload portion 503, and an integrity portion 504. In one embodiment, the integrity portion 504 includes a checksum. In one embodiment, the sensor units 102-106, the repeater units 110-111, and the base unit 112 communicate using packets such as the packet 500. In one embodiment, the packets 500 are transmitted using FHSS.

In one embodiment, the data packets that travel between the sensor unit 102, the repeater unit 111, and the base unit 112 are encrypted. In one embodiment, the data packets that travel between the sensor unit 102, the repeater unit 111, and the base unit 112 are encrypted and an authentication code is provided in the data packet so that the sensor unit 102, the repeater unit, and/or the base unit 112 can verify the authenticity of the packet.

In one embodiment the address portion 502 includes a first code and a second code. In one embodiment, the repeater 111 only examines the first code to determine if the packet should be forwarded. Thus, for example, the first code can be interpreted as a building (or building complex) code and the second code interpreted as a subcode (e.g., an apartment code, area code, etc.). A repeater that uses the first code for forwarding, thus, forwards packets having a specified first code (e.g., corresponding to the repeater's building or building complex). Thus, alleviates the need to program a list of sensor units 102 into a repeater, since a group of sensors in a building will typically all have the same first code but different second codes. A repeater so configured, only needs to know the first code to forward packets for any repeater in the building or building complex. This does, however, raise the possibility that two repeaters in the same building could try to forward packets for the same sensor unit 102. In one embodiment, each repeater waits for a programmed delay period before forwarding a packet. Thus, reducing the chance of packet collisions at the base unit (in the case of sensor unit to base unit packets) and reducing the chance of packet collisions at the sensor unit (in the case of base unit to sensor unit packets). In one embodiment, a delay period is programmed into each repeater. In one embodiment, delay periods are pre-programmed onto the repeater units at the factory or during installation. In one embodiment, a delay period is programmed into each repeater by the base unit 112. In one embodiment, a repeater randomly chooses a delay period. In one embodiment, a repeater randomly chooses a delay period for each forwarded packet. In one embodiment, the first code is at least 6 digits. In one embodiment, the second code is at least 5 digits.

In one embodiment, the first code and the second code are programmed into each sensor unit at the factory. In one embodiment, the first code and the second code are programmed when the sensor unit is installed. In one embodiment, the base unit 112 can re-program the first code and/or the second code in a sensor unit.

In one embodiment, collisions are further avoided by configuring each repeater unit 111 to begin transmission on a different frequency channel. Thus, if two repeaters attempt to begin transmission at the same time, the repeaters will not interfere with each other because the transmissions will begin on different channels (frequencies).

FIG. 6 is a flowchart showing one embodiment of the operation of the sensor unit 102 wherein relatively continuous monitoring is provided. In FIG. 6, a power up block 601 is followed by an initialization block 602. After initialization, the sensor unit 102 checks for a fault condition (e.g., activation of the tamper sensor, low battery, internal fault, etc.) in a block 603. A decision block 604 checks the fault status. If a fault has occurred, then the process advances to a block 605 were the fault information is transmitted to the repeater 110 (after which, the process advances to a block 612); otherwise, the process advances to a block 606. In the block 606, the sensor unit 102 takes a sensor reading from the sensor(s) 201. The sensor data is subsequently evaluated in a block 607. If the sensor data is abnormal, then the process advances to a transmit block 609 where the sensor data is transmitted to the repeater 110 (after which, the process advances to a block 612); otherwise, the process advances to a timeout decision block 610. If the timeout period has not elapsed, then the process returns to the fault-check block 603; otherwise, the process advances to a transmit status block 611 where normal status information is transmitted to the repeater 110. In one embodiment, the normal status information transmitted is analogous to a simple “ping” which indicates that the sensor unit 102 is functioning normally. After the block 611, the process proceeds to a block 612 where the sensor unit 102 momentarily listens for instructions from the monitor computer 113. If an instruction is received, then the sensor unit 102 performs the instructions, otherwise, the process returns to the status check block 603. In one embodiment, transceiver 203 is normally powered down. The controller 202 powers up the transceiver 203 during execution of the blocks 605, 609, 611, and 612. The monitoring computer 113 can send instructions to the sensor unit 102 to change the parameters used to evaluate data used in block 607, the listen period used in block 612, etc.

Relatively continuous monitoring, such as shown in FIG. 6, is appropriate for sensor units that sense relatively high-priority data (e.g., smoke, fire, carbon monoxide, flammable gas, etc.). By contrast, periodic monitoring can be used for sensors that sense relatively lower priority data (e.g., humidity, moisture, water usage, etc.). FIG. 7 is a flowchart showing one embodiment of operation of the sensor unit 102 wherein periodic monitoring is provided. In FIG. 7, a power up block 701 is followed by an initialization block 702. After initialization, the sensor unit 102 enters a low-power sleep mode 703. If a fault occurs during the sleep mode 703 (e.g., the tamper sensor is activated), then the process enters a wake-up block 704 followed by a transmit fault block 705. If no fault occurs during the sleep period, then when the specified sleep period has expired, the process enters a block 706 where the sensor unit 102 takes a sensor reading from the sensor(s) 201. The sensor data is subsequently sent to the monitoring computer 113 in a report block 707. After reporting, the sensor unit 102 enters a listen block 708 where the sensor unit 102 listens for a relatively short period of time for instructions from monitoring computer. If an instruction is received, then the sensor unit 102 performs the instructions, otherwise, the process returns to the sleep block 703. In one embodiment, the sensor 201 and transceiver 203 are normally powered down. The controller 202 powers up the sensor 201 during execution of the block 706. The controller 202 powers up the transceiver during execution of the blocks 705, 707, and 708. The monitoring computer 113 can send instructions to the sensor unit 102 to change the sleep period used in block 703, the listen period used in block 708, etc.

In one embodiment, the sensor unit transmits sensor data until a handshaking-type acknowledgement is received. Thus, rather than sleep if no instructions or acknowledgements are received after transmission (e.g., after the decision block 613 or 709) the sensor unit 102 retransmits its data and waits for an acknowledgement. The sensor unit 102 continues to transmit data and wait for an acknowledgement until an acknowledgement is received. In one embodiment, the sensor unit accepts an acknowledgement from a repeater unit 111 and it then becomes the responsibility of the repeater unit 111 to make sure that the data is forwarded to the base unit 112. In one embodiment, the repeater unit 111 does not generate the acknowledgement, but rather forwards an acknowledgement from the base unit 112 to the sensor unit 102. The two-way communication ability of the sensor unit 102 provides the capability for the base unit 112 to control the operation of the sensor unit 102 and also provides the capability for robust handshaking-type communication between the sensor unit 102 and the base unit 112.

Regardless of the normal operating mode of the sensor unit 102 (e.g., using the Flowcharts of FIGS. 6, 7, or other modes) in one embodiment, the monitoring computer 113 can instruct the sensor unit 102 to operate in a relatively continuous mode where the sensor repeatedly takes sensor readings and transmits the readings to the monitoring computer 113. Such a mode would can be used, for example, when the sensor unit 102 (or a nearby sensor unit) has detected a potentially dangerous condition (e.g., smoke, rapid temperature rise, etc.)

FIG. 8 shows the sensor system used to detect water leaks. In one embodiment, the sensor unit 102 includes a water level sensor 803 and/or a water temperature sensor 804. The water level sensor 803 and/or water temperature sensor 804 are placed, for example, in a tray underneath a water heater 801 in order to detect leaks from the water heater 801 and thereby, prevent water damage from a leaking water heater. In one embodiment, an temperature sensor is also provided to measure temperature near the water heater. The water level sensor can also be placed under a sink, in a floor sump, etc. In one embodiment, the severity of a leak is ascertained by the sensor unit 102 (or the monitoring computer 113) by measuring the rate of rise in the water level. When placed near the hot water tank 801, the severity of a leak can also be ascertained at least in part by measuring the temperature of the water. In one embodiment, a first water flow sensor is placed in an input water line for the hot water tank 801 and a second water flow sensor is placed in an output water line for the hot water tank. Leaks in the tank can be detected by observing a difference between the water flowing through the two sensors.

In one embodiment, a remote shutoff valve 810 is provided, so that the monitoring system 100 can shutoff the water supply to the water heater when a leak is detected. In one embodiment, the shutoff valve is controlled by the sensor unit 102. In one embodiment, the sensor unit 102 receives instructions from the base unit 112 to shut off the water supply to the heater 801. In one embodiment, the responsible party 120 sends instructions to the monitoring computer 113 instructing the monitoring computer 113 to send water shut off instructions to the sensor unit 102. Similarly, in one embodiment, the sensor unit 102 controls a gas shutoff valve 811 to shut off the gas supply to the water heater 801 and/or to a furnace (not shown) when dangerous conditions (such as, for example, gas leaks, carbon monoxide, etc.) are detected. In one embodiment, a gas detector 812 is provided to the sensor unit 102. In one embodiment, the gas detector 812 measures carbon monoxide. In one embodiment, the gas detector 812 measures flammable gas, such as, for example, natural gas or propane.

In one embodiment, an optional temperature sensor 818 is provided to measure stack temperature. Using data from the temperature sensor 818, the sensor unit 102 reports conditions, such as, for example, excess stack temperature. Excess stack temperature is often indicative of poor heat transfer (and thus poor efficiency) in the water heater 818.

In one embodiment, an optional temperature sensor 819 is provided to measure temperature of water in the water heater 810. Using data from the temperature sensor 819, the sensor unit 102 reports conditions, such as, for example, over-temperature or under-temperature of the water in the water heater.

In one embodiment, an optional current probe 821 is provided to measure electric current provided to a heating element 820 in an electric water heater. Using data from the current probe 821, the sensor unit 102 reports conditions, such as, for example, no current (indicating a burned-out heating element 820). An over-current condition often indicates that the heating element 820 is encrusted with mineral deposits and needs to be replaced or cleaned. By measuring the current provided to the water heater, the monitoring system can measure the amount of energy provided to the water heater and thus the cost of hot water, and the efficiency of the water heater.

In one embodiment, the sensor 803 includes a moisture sensor. Using data from the moisture sensor, the sensor unit 102 reports moisture conditions, such as, for example, excess moisture that would indicate a water leak, excess condensation, etc.

In one embodiment, the sensor unit 102 is provided to a moisture sensor (such as the sensor 803) located near an air conditioning unit. Using data from the moisture sensor, the sensor unit 102 reports moisture conditions, such as, for example, excess moisture that would indicate a water leak, excess condensation, etc.

In one embodiment, the sensor 201 includes a moisture sensor. The moisture sensor can be placed under a sink or a toilet (to detect plumbing leaks) or in an attic space (to detect roof leaks).

Excess humidity in a structure can cause severe problems such as rotting, growth of molds, mildew, and fungus, etc. (hereinafter referred to generically as fungus). In one embodiment, the sensor 201 includes a humidity sensor. The humidity sensor can be placed under a sink, in an attic space, etc., to detect excess humidity (due to leaks, condensation, etc.). In one embodiment, the monitoring computer 113 compares humidity measurements taken from different sensor units in order to detect areas that have excess humidity. Thus, for example, the monitoring computer 113 can compare the humidity readings from a first sensor unit 102 in a first attic area, to a humidity reading from a second sensor unit 102 in a second area. For example, the monitoring computer can take humidity readings from a number of attic areas to establish a baseline humidity reading and then compare the specific humidity readings from various sensor units to determine if one or more of the units are measuring excess humidity. The monitoring computer 113 would flag areas of excess humidity for further investigation by maintenance personnel. In one embodiment, the monitoring computer 113 maintains a history of humidity readings for various sensor units and flags areas that show an unexpected increase in humidity for investigation by maintenance personnel.

In one embodiment, the monitoring system 100 detects conditions favorable for fungus (e.g., mold, mildew, fungus, etc.) growth by using a first humidity sensor located in a first building area to produce first humidity data and a second humidity sensor located in a second building area to produce second humidity data. The building areas can be, for example, areas near a sink drain, plumbing fixture, plumbing, attic areas, outer walls, a bilge area in a boat, etc.

The monitoring station 113 collects humidity readings from the first humidity sensor and the second humidity sensor and indicates conditions favorable for fungus growth by comparing the first humidity data and the second humidity data. In one embodiment, the monitoring station 113 establishes a baseline humidity by comparing humidity readings from a plurality of humidity sensors and indicates possible fungus growth conditions in the first building area when at least a portion of the first humidity data exceeds the baseline humidity by a specified amount. In one embodiment, the monitoring station 113 establishes a baseline humidity by comparing humidity readings from a plurality of humidity sensors and indicates possible fungus growth conditions in the first building area when at least a portion of the first humidity data exceeds the baseline humidity by a specified percentage.

In one embodiment, the monitoring station 113 establishes a baseline humidity history by comparing humidity readings from a plurality of humidity sensors and indicates possible fungus growth conditions in the first building area when at least a portion of the first humidity data exceeds the baseline humidity history by a specified amount over a specified period of time. In one embodiment, the monitoring station 113 establishes a baseline humidity history by comparing humidity readings from a plurality of humidity sensors over a period of time and indicates possible fungus growth conditions in the first building area when at least a portion of the first humidity data exceeds the baseline humidity by a specified percentage of a specified period of time.

In one embodiment, the sensor unit 102 transmits humidity data when it determines that the humidity data fails a threshold test. In one embodiment, the humidity threshold for the threshold test is provided to the sensor unit 102 by the monitoring station 113. In one embodiment, the humidity threshold for the threshold test is computed by the monitoring station from a baseline humidity established in the monitoring station. In one embodiment, the baseline humidity is computed at least in part as an average of humidity readings from a number of humidity sensors. In one embodiment, the baseline humidity is computed at least in part as a time average of humidity readings from a number of humidity sensors. In one embodiment, the baseline humidity is computed at least in part as a time average of humidity readings from a humidity sensor. In one embodiment, the baseline humidity is computed at least in part as the lesser of a maximum humidity reading an average of a number of humidity readings.

In one embodiment, the sensor unit 102 reports humidity readings in response to a query by the monitoring station 113. In one embodiment, the sensor unit 102 reports humidity readings at regular intervals. In one embodiment, a humidity interval is provided to the sensor unit 102 by the monitoring station 113.

In one embodiment, the calculation of conditions for fungus growth is comparing humidity readings from one or more humidity sensors to the baseline (or reference) humidity. In one embodiment, the comparison is based on comparing the humidity readings to a percentage (e.g., typically a percentage greater than 100%) of the baseline value. In one embodiment, the comparison is based on comparing the humidity readings to a specified delta value above the reference humidity. In one embodiment, the calculation of likelihood of conditions for fungus growth is based on a time history of humidity readings, such that the longer the favorable conditions exist, the greater the likelihood of fungus growth. In one embodiment, relatively high humidity readings over a period of time indicate a higher likelihood of fungus growth than relatively high humidity readings for short periods of time. In one embodiment, a relatively sudden increase in humidity as compared to a baseline or reference humidity is reported by the monitoring station 113 as a possibility of a water leak. If the relatively high humidity reading continues over time then the relatively high humidity is reported by the monitoring station 113 as possibly being a water leak and/or an area likely to have fungus growth or water damage.

Temperatures relatively more favorable to fungus growth increase the likelihood of fungus growth. In one embodiment, temperature measurements from the building areas are also used in the fungus grown-likelihood calculations. In one embodiment, a threshold value for likelihood of fungus growth is computed at least in part as a function of temperature, such that temperatures relatively more favorable to fungus growth result in a relatively lower threshold than temperatures relatively less favorable for fungus growth. In one embodiment, the calculation of a likelihood of fungus growth depends at least in part on temperature such that temperatures relatively more favorable to fungus growth indicate a relatively higher likelihood of fungus growth than temperatures relatively less favorable for fungus growth. Thus, in one embodiment, a maximum humidity and/or minimum threshold above a reference humidity is relatively lower for temperature more favorable to fungus growth than the maximum humidity and/or minimum threshold above a reference humidity for temperatures relatively less favorable to fungus growth.

In one embodiment, a water flow sensor is provided to the sensor unit 102. The sensor unit 102 obtains water flow data from the water flow sensor and provides the water flow data to the monitoring computer 113. The monitoring computer 113 can then calculate water usage. Additionally, the monitoring computer can watch for water leaks, by, for example, looking for water flow when there should be little or no flow. Thus, for example, if the monitoring computer detects water usage throughout the night, the monitoring computer can raise an alert indicating that a possible water leak has occurred.

In one embodiment, the sensor 201 includes a water flow sensor provided to the sensor unit 102. The sensor unit 102 obtains water flow data from the water flow sensor and provides the water flow data to the monitoring computer 113. The monitoring computer 113 can then calculate water usage. Additionally, the monitoring computer can watch for water leaks, by, for example, looking for water flow when there should be little or no flow. Thus, for example, if the monitoring computer detects water usage throughout the night, the monitoring computer can raise an alert indicating that a possible water leak has occurred.

In one embodiment, the sensor 201 includes a fire-extinguisher tamper sensor provided to the sensor unit 102. The fire-extinguisher tamper sensor reports tampering with or use of a fire-extinguisher. In one embodiment the fire-extinguisher tamper sensor reports that the fire extinguisher has been removed from its mounting, that a fire extinguisher compartment has been opened, and/or that a safety lock on the fire extinguisher has been removed.

In one embodiment, the sensor unit 102 is configured as an adjustable-threshold sensor that computes a reporting threshold level. In one embodiment, the reporting threshold is computed as an average of a number of sensor measurements. In one embodiment, the average value is a relatively long-term average. In one embodiment, the average is a time-weighted average wherein recent sensor readings used in the averaging process are weighted differently than less recent sensor readings. In one embodiment, more recent sensor readings are weighted relatively more heavily than less recent sensor readings. In one embodiment, more recent sensor readings are weighted relatively less heavily than less recent sensor readings. The average is used to set the reporting threshold level. When the sensor readings rise above the reporting threshold level, the sensor indicates a notice condition. In one embodiment, the sensor indicates a notice condition when the sensor reading rises above the reporting threshold value for a specified period of time. In one embodiment, the sensor indicates a notice condition when a statistical number of sensor readings (e.g., 3 of 2, 5 of 3, 10 of 7, etc.) are above the reporting threshold level. In one embodiment, the sensor unit 102 indicates various levels of alarm (e.g., warning, alert, alarm) based on how far above the reporting threshold the sensor reading has risen.

In one embodiment, the sensor unit 102 computes the notice level according to how far the sensor readings have risen above the threshold and how rapidly the sensor readings have risen. For example, for purposes of explanation, the level of readings and the rate of rise can be quantified as low, medium, and high. The combination of sensor reading level and rate of rise then can be shown as a table, as shown in Table 1. Table 1 provides examples and is provided by way of explanation, not limitation.

TABLE 1 Sensor Reading Level (as compared to the reporting threshold Rate of High Warning Alarm Alarm Rise Medium Notice Warning Alarm Low Notice Warning Alarm Low Medium High

One of ordinary skill in the art will recognize that the notice level N can be expressed as an equation N=f(t, v, r), where t is the reporting threshold level, v is the sensor reading, and r is the rate of rise of the sensor reading. In one embodiment, the sensor reading v and/or the rate of rise r are lowpass filtered in order to reduce the effects of noise in the sensor readings. In one embodiment, the reporting threshold is computed by lowpass filtering the sensor readings v using a filter with a relatively low cutoff frequency. A filter with a relatively low cutoff frequency produces a relatively long-term averaging effect. In one embodiment, separate reporting thresholds are computed for the sensor reading and for the rate of rise.

In one embodiment, a calibration procedure period is provided when the sensor unit 102 is powered up. During the calibration period, the sensor data values from the sensor 201 are used to compute one or more thresholds, but the sensor does not compute notices, warnings, alarms, etc., until the calibration period is complete. In one embodiment, the sensor unit 102 uses a fixed (e.g., pre-programmed) threshold value to compute notices, warnings, and alarms during the calibration period and then uses the adjustable reporting threshold value once the calibration period has ended.

In one embodiment, the sensor unit 102 determines that a failure of the sensor 201 has occurred when the adjustable reporting threshold value exceeds a maximum adjustable threshold value. In one embodiment, the sensor unit 102 determines that a failure of the sensor 201 has occurred when the adjustable threshold value falls below a minimum adjustable threshold value. The sensor unit 102 can report such failure of the sensor 201 to the base unit 112.

In one embodiment, the sensor unit 102 obtains a number of sensor data readings from the sensor 201 and computes one or more calibration and/or reporting thresholds as a weighted average using a weight vector. The weight vector weighs some sensor data readings relatively more than other sensor data readings.

In one embodiment, the sensor unit 102 obtains a number of sensor data readings from the sensor unit 201 and filters the sensor data readings and calculates the threshold value from the filtered sensor data readings. In one embodiment, the sensor unit applies a lowpass filter. In one embodiment, the sensor unit 201 uses a Kalman filter to remove unwanted components from the sensor data readings. In one embodiment, the sensor unit 201 discards sensor data readings that are “outliers” (e.g., too far above or too far below a normative value). In this manner, the sensor unit 102 can compute the threshold value even in the presence of noisy sensor data.

In one embodiment, the sensor unit 102 indicates a notice condition (e.g., alert, warning, alarm) when the reporting threshold value changes too rapidly. In one embodiment, the sensor unit 102 indicates a notice condition (e.g., alert, warning, alarm) when the threshold value exceeds a specified maximum value. In one embodiment, the sensor unit 102 indicates a notice condition (e.g., alert, warning, alarm) when the threshold value falls below a specified minimum value.

In one embodiment, the sensor unit 102 adjusts one or more operating parameters of the sensor 201 according to one or more threshold values. Thus, for example, in the example of an optical smoke sensor, the sensor unit 201 can reduce the power used to drive the LED in the optical smoke sensor when the threshold value indicates that the optical smoke sensor can be operated at lower power (e.g., low ambient light conditions, clean sensor, low air particulate conditions, etc.). The sensor unit 201 can increase the power used to drive the LED when the threshold value indicates that the optical smoke sensor should be operated at higher power (e.g., high ambient light, dirty sensor, higher particulates in the air, etc.).

In one embodiment, an output from a Heat Ventilating and/or Air Conditioning (HVAC) system 350 is optionally provided to the sensor unit 102 as shown in FIG. 2. In one embodiment, an output from the HVAC system 350 is optionally provided to the repeater 110 as shown in FIG. 3 and/or to the monitoring system 113 as shown in FIG. 4. In this manner, the system 100 is made aware of the operation of the HVAC system. When the HVAC system turns on or off, the airflow patterns in the room change, and thus, the way in which smoke or other materials (e.g., flammable gases, toxic gases, etc.) changes as well. Thus, in one embodiment, the threshold calculation takes into account the airflow effects caused by the HVAC system. In one embodiment, an adaptive algorithm is used to allow the sensor unit 102 (or monitoring system 113) to “learn” how the HVAC system affects sensor readings and thus, the sensor unit 102 (or monitoring system 113) can adjust the threshold level accordingly. In one embodiment, the threshold level is temporarily changed for a period of time (e.g., raised or lowered) to avoid false alarms when the HVAC system turns on or off Once the airflow patterns in the room have re-adjusted to the HVAC state, then the threshold level can be re-established for desired system sensitivity.

Thus, for example, in one embodiment where an averaging or lowpass filter type process is used to establish the threshold level, the threshold level is temporarily set to de-sensitize the sensor unit 102 when the HVAC system turns on or off, thus allowing the averaging or lowpass filtering process to establish a new threshold level. Once a new threshold level is established (or after a specified period of time), then the sensor unit 102 returns to its normal sensitivity based on the new threshold level.

In one embodiment, the sensor 201 is configured as an infrared sensor. In one embodiment, the sensor 201 is configured as an infrared sensor to measure a temperature of objects within a field of view of the sensor 201. In one embodiment, the sensor 201 is configured as an infrared sensor. In one embodiment, the sensor 201 is configured as an infrared sensor to detect flames within a field of view of the sensor 201. In one embodiment, the sensor 201 is configured as an infrared sensor.

In one embodiment, the sensor 201 is configured as an imaging sensor. In one embodiment, the controller 202 is configured to detect flames by processing of image data from the imaging sensor.

FIG. 9 shows an optical smoke sensor 900 configured to operate at a relatively high sensitivity. The smoke sensor 900 is one embodiment of the sensor 201. The smoke sensor 900 includes a chamber 901, an emitter 902 provided to the chamber 901, and a photo-sensor 903 provided to the chamber 901. The emitter 902 and photo-sensor 903 are configured to sense smoke in a region 950 of the smoke chamber 901. In one embodiment, an optional temperature sensor 920 is also provided to the chamber 901. A driver 905 is provided to the emitter 902. The photo-sensor 903 is provided to an amplifier 906. In one embodiment, the emitter 902 emits infrared light and the photo-sensor 903 senses infrared light. In one embodiment, the emitter 902 emits visible light and the photo-sensor 903 senses visible light. In one embodiment, the emitter 902 is configured as a plurality of emitters and/or a multi-spectrum emitter configured to emit light in a plurality of wavelengths (e.g., infrared light, red light, green light, blue light, ultraviolet light, etc.) and the photo-sensor 903 is configured as a plurality of photo-sensors and/or multi-spectral sensors to sense the plurality of wavelengths emitted by the emitter 902. In one embodiment, the photo-sensor 903 is configured to sense light in a band or bands corresponding to light emitted by the emitter 902 and to reject light in other bands. In one embodiment, the photo-sensor 903 is configured to sense light in a selected wavelength band corresponding to light emitted by the emitter 902 and to reject light in other bands. In one embodiment one or more filters are provided to the photo-sensor 903 to make the photo-sensor 903 relatively insensitive to light in undesired wavelengths.

The optional temperature sensor 920 is provided to an interface 921. In one embodiment, an optional fan 930 is provided to the smoke chamber 901. The fan 930 can be provided within the smoke chamber 901 and/or the fan 930 can be provided external to the smoke chamber 901. The fan 930 is configured to increase airflow and air exchange between the smoke chamber 901 and the region outside the smoke chamber 901. The fan 930 can be conventional rotary fan, a piezoelectric fan, etc.

In one embodiment, an optional calibration module 941 is provided by the sensor 900 to the controller 202. As described in more detail below, the calibration module 941 can provide calibration data for the sensor unit 900 and/or software for the sensor unit 900.

In operation, the driver 905 generates one or more drive pulses in response to commands from the controller 202. The drive pulses are provided to the emitter 902 which generates optical radiation in the chamber 901. The photo-sensor 903 senses the optical radiation from the emitter 902 (e.g., as radiation scattered by the chamber, radiation scattered by smoke in the chamber, etc.). The amplifier 906 amplifies signals from the photo-sensor 903 and provides the sensor data to the controller 202. In one embodiment, the amplifier 906 includes one or more temperature sensors 916 that provides temperature compensation to correct temperature variations of the photo-sensor 903. The temperature compensation of the amplifier 906 at least partially stabilizes the signals from the photo-sensor 903 and thus, allows the sensor 900 to be operated at relatively higher sensitivity while reducing the number of temperature-created false alarms.

FIG. 10 shows an emitter drive pulse 1001 and photo-sensor output 1002 during dark time 1003 and during pulse time 1004 (when the emitter drive pulse is driving the emitter 902). The sensor unit 900 can be calibrated at least in part by collecting data from the photo-sensor 903 during the dark time 1003 and during the pulse time 1004. During the dark time 1003, the emitter 902 is producing little or no radiation, and thus, the signals produced by the photo-sensor 903 are not due to radiation emitted by the emitter 902, but rather are produced by ambient light and/or by the photo-sensor 902 itself (e.g., thermal noise, radio interference, etc.). Thus, the signals produced by the photo-sensor 903 during the dark time 1003 can be used to establish a first background level or first reference level for the sensor 900. A second reference level can be established by measuring the output of the photo-sensor 903 during the pulse time 1004 when smoke is not present (or not expected to be present). In a scattering sensor, the photo-sensor 903 does not directly receive radiation from the emitter 902, but rather receives radiation from the emitter 902 that is scattered by smoke, water vapor, the chamber 901, etc. When no smoke, water vapor, and the like is present, then the difference between the first reference level and the second reference level is due to scattering from the chamber 901. If the second reference level is relatively higher than the first reference level, then the controller 202 knows that the emitter 902 and photo-sensor 903 are operating and that the emitter is producing enough radiation to overcome the ambient light and other background noise. If the second reference level does not rise above the first reference level, the controller can, in one embodiment, instruct the driver 905 to increase the drive pulse and thus, produce more radiation from the emitter 902. If the second reference level is not higher than the first reference level (e.g., during operation or, if provided, after increasing the drive pulse), then the controller 202 can send a fault message to the base unit 113 indicating that a fault has occurred in the sensor 900. If no fault is detected, then the smoke measurements are obtained by comparing sensor measure data with second reference level. Smoke is detected when the measured data from the sensor exceeds the second reference level by a specified amount.

FIG. 11 shows a calibration sequence 1100 for the optical smoke sensor of FIG. 9. At power-up 1101, it is assumed that there is no smoke present and the controller 202 takes one or more calibration measurements using the sensor 900. A first set of calibration measurements is taken during the dark period 1003. A second set of calibration measurements is taken during the pulse period 1004. In one embodiment, the largest measurement during the pulse period 1004 is used as the second reference level. In one embodiment, an average of several of the relatively largest measurements during the pulse period 1004 is used as the second reference level.

The optional fan 930 can advantageously be used to increase air/smoke exchange between the chamber 901 and the air/smoke in the room. In one embodiment, the fan 930 is controlled by the controller 202 such that the controller 202 determines when, and if, the fan 930 is operated. Since operation of the fan 930 may reduce battery life, in one embodiment, the controller 202 operates the fan 930 on an intermittent basis in connection with smoke measurements. In one embodiment, the controller operates the fan during smoke measurements. In one embodiment, the controller operates the fan between smoke measurements (e.g., between pulses of radiation from the emitter 902) and does not operate the fan during smoke measurements. In one embodiment, when a smoke measurement indicates that there may be smoke present, the controller 202 operates the fan 930 for a relatively brief period (to try and draw additional smoke into the chamber 901) and then takes additional smoke measurements. The fan increases air exchange with the smoke chamber 901 and thus, makes the smoke sensor 900 respond relatively more quickly to changes in the level of smoke near the sensor 900. Thus, for example, in some configurations, smoke may become temporarily trapped in the smoke chamber 901 and cause the sensor 900 to report the presence of smoke even after smoke in the room has dissipated. By using the fan, the controller 202 can cause relatively more air exchange of the smoke chamber, clear trapped smoke from the chamber 901, and thereby cause the sensor 900 to respond relatively more rapidly to changes in the ambient smoke level.

In one embodiment, the controller 202 operates the fan in response to one or more commands from the computer 113. Thus, for example, if the computer 113 receives smoke measurements from the sensor unit 103, which is located relatively near the sensor unit 102 (e.g., in the same apartment, same hallway, same portion of a building, etc.) then the computer 113 can instruct the controller 202 in the sensor unit 102 to activate the fan 930 in order to improve the response time of the sensor unit 102. In one embodiment, the computer 113 instructs the sensor unit 102 to first take one or more smoke sensor measurements (without activating the fan 930) and report these first measurements back to the computer 113. The computer 113 can then instruct the controller 202 to active the fan 930 and then take one or more smoke sensor measurements (with the fan 930 running/and or after the fan 930 has been stopped) and report the second smoke sensor measurements. If either the first or second set of smoke sensor measurements indicates smoke is present, then the computer 113 can report that the area affected by smoke includes the area proximate to both the sensor units 102 and 103.

In one embodiment, the controller 202 stores three threshold levels. The first threshold level corresponds to one or more first measurements taken by the photo-sensor 903 when the emitter 902 is not operating. Thus, the first threshold corresponds generally to the dark current of the photo-sensor 903 and ambient light detected by the photo-sensor 903. In one embodiment, the first threshold is computed by selecting the maximum of the first measurements. In one embodiment, the first threshold is computed by averaging one or more of the first measurements. The resulting first threshold is then stored. In one embodiment, the ambient temperature present at the time of the first measurements is recorded. A correction factor can be applied to the first threshold to account for ambient temperature. In one embodiment, the temperature correction is provided by analog circuitry associated with the photo-sensor 903 (e.g., by thermistors 916 used to compensate the gain characteristics of the amplifier 906). In one embodiment, the temperature correction is computed digitally by the controller 202 using data from the temperature sensor 920. In one embodiment, both analog compensation using the temperature sensors 916, and digital compensation using data from the temperature sensor 920 are used. The resulting first threshold is then stored.

The first threshold can vary according to the temperature of the photo-sensor 903 and the presence or absence of ambient light. Thus, when taking actual smoke measurements or running diagnostics, the controller 202 can re-measure the output of the photo-sensor 903 when the emitter 902 is not operating, re-compute the first threshold, and compare the re-computed first threshold value with the stored first threshold value. If the re-computed first threshold value differs from the stored first threshold value by a specified error threshold, then the controller 202 can report to the monitoring computer 113 that an anomalous condition or fault condition has occurred.

The second threshold corresponds to one or more second measurements taken by the photo-sensor 903 when the emitter 902 is pulsed, but when smoke is not expected to be present. Thus in a scattering-type smoke sensor, the second threshold corresponds generally to the light detected by the photo-sensor 903 that is scattered by the chamber 901. In an obscuration-type smoke sensor, the second threshold corresponds generally to the light detected by the photo-sensor 903 from the emitter 902. In one embodiment, the second threshold is computed by selecting the maximum of the second measurements. In one embodiment, the second threshold is computed by averaging one or more of the second measurements. In one embodiment, the ambient temperature present at the time of the second measurements is recorded. A correction factor can be applied to the second threshold to account for ambient temperature. In one embodiment, the temperature correction is provided by analog circuitry associated with the photo-sensor 903 (e.g., by thermistors 916 used to compensate the gain characteristics of the amplifier 906). In one embodiment, the temperature correction is computed digitally by the controller 202 using data from the temperature sensor 920. In one embodiment, both analog compensation using the temperature sensors 916, and digital compensation using data from the temperature sensor 920 are used.

The resulting second threshold is then stored. Thus, when running diagnostics, the controller 202 can re-measure the output of the photo-sensor 903 when the emitter 902 is operating, re-compute the second threshold, and compare the re-computed second threshold value with the stored second threshold value. If the re-computed second threshold value differs from the stored second threshold value by a specified error threshold, then the controller 202 can report to the monitoring computer 113 that an anomalous condition or fault condition has occurred. Typically, the second threshold will be relatively larger than the first threshold. Thus, in one embodiment, the controller 202 can compare the first threshold with the second threshold. If the second threshold is not relatively larger than the first threshold, then an anomalous condition or error condition can be reported.

The third threshold corresponds to the reporting threshold described above, and is the threshold level at which the controller determines that smoke may be present and that the sensor measurements should be reported to the monitoring computer 113. In one embodiment, the controller 202 computes the third threshold as a function of the second threshold (e.g., as a percentage increase, as a fixed increase, etc.). In one embodiment, the controller 202 computes the third threshold as a function of the first threshold and the second threshold. In one embodiment, the controller 202 reports the second threshold (and, optionally the first threshold) to the monitoring computer 113, and the monitoring computer computes the desired third threshold and sends the third threshold to the controller 202. As described in connection with FIG. 6, if the measured data from the photo sensor 903 exceeds the third threshold (the reporting threshold) then the controller 202 sends the measured smoke data to the monitoring computer 113. Moreover, as described above, the value of the third threshold (the reporting threshold) is adjustable and can be lowered relatively closer to the second threshold to increase the sensitivity of the sensor unit 102.

The sensitivity of the sensor unit 102 increases as the third threshold (the reporting threshold) approaches the second threshold, and the sensitivity of the sensor unit 102 decreases as the third threshold increased above the second threshold. Moreover, the sensitivity of the sensor unit 102 increases as the second threshold decreases. Although the second threshold should typically not be lower than the first threshold, the value of the first threshold can vary due to the temperature of the photo-sensor 903 and the ambient light. Thus, in one embodiment, the controller periodically re-measures the first and second thresholds and re-computes the third threshold to provide relatively high sensitivity as allowed by current conditions.

In one embodiment, the controller computes both the second and third threshold values based on the measured first threshold value. Since the first threshold value is measured when the emitter is 902 is not operating, the first threshold value is relatively independent of the presence of smoke and depends primarily on the ambient temperature and the presence of ambient light. Thus, the controller can re-measure the first threshold and compute the second threshold using the stored first and second threshold values obtained during calibration.

In one embodiment, the smoke sensor 900 is configured as a replaceable module. A connector 940 is provided to the smoke sensor 900 to allow the smoke sensor 900 to be provided to the controller 202. In one embodiment, the smoke sensor 900 is calibrated (e.g., calibrated at the factory, calibrated before installation, calibrated during installation, etc.) and the calibration data is provided to a calibration module 941. The calibration module 941 provides the calibration data to the controller 202 so that the controller 202 knows the characteristics of the smoke sensor 900. In one embodiment, the calibration module 941 is configured as a read-only memory (ROM) that provides calibration data.

In one embodiment, the calibration module 941 is configured as a ROM that provides software used by the controller 202 to, at least in part, operate the sensor 900. By providing software with the sensor module 900, different types of sensor modules, upgraded sensor modules, etc., can be plugged into the sensor unit 102 for use by the controller 202. In one embodiment, flash memory is provided (in the calibration module 941 and/or in the controller 202) to allow the monitoring computer 113 or installation personal to download new software into the sensor unit 102.

In one embodiment, calibration data provided by the calibration module 941 includes expected ranges for the first threshold and/or the second threshold. The controller 202 can report a fault if the actual first and/or second threshold values measured (or computed) by the controller 202 fall outside the ranges specified by the calibration module 941.

FIG. 12 shows one embodiment of temperature compensation for the emitter 902 and the photo-detector 903. In the embodiment of FIG. 12, an input to the emitter 902 is provided through a resistor 1201 to a control input of a transistor 1202 (the transistor 1202 is shown as an NPN transistor, but one of skill in the art will recognize the transistor 1202 can also be configured as a PNP transistor, FET transistor, MOSFET transistor, etc.). The transistor 1202 is configured such that when the transistor 1202 is in a conducting state, the transistor 1202 provides current from a photo-emitter diode 1203 to ground. Current from a V+supply is provided to the diode 1203 by a parallel combination of a resistor 1204 and a thermistor 1205. In one embodiment, the thermistor 1205 has a negative temperature coefficient. In one embodiment, the resistance of the resistor 1204 is relatively smaller than the resistance of the thermistor 1205. In one embodiment, the resistance of the resistor 1204 is substantially smaller than the resistance of the thermistor 1205.

In the embodiment of FIG. 12, in photo-detector 903, the V+supply is provided through a resistor 1211 to a reverse-biased photo-detector diode 1212. The photo-diode 1212 is provided to ground through a resistor 1213. The ungrounded terminal of the resistor 1213 is also provided to an input of an amplifier 1214. An output of the amplifier 1214 is provided to ground through a thermistor 1215 to an input of an amplifier 1217. The input of the amplifier 1217 is also provided to ground through a resistor 1216, such that the thermistor 1215 and the resistor 1216 form a voltage divider. In one embodiment, the thermistor 1215 has a negative temperature coefficient. An output of the amplifier 1217 is provided as an output of the photo-detector 903.

The thermistor 1205 provides temperature compensation for the photo-emitter diode 1203 to stabilize the operation of the diode 1203 with respect to temperature. The thermistor 1215 provides temperature compensation for the photo-detector diode 1203 to stabilize the operation of the diode 1212 with respect to temperature. Thus, the embodiments of the emitter 902 and photo-detector 903 shown in FIG. 12 provide an output that is relatively more stable with temperature changes than embodiments that are not temperature corrected. The use of temperature correction shown in FIG. 12 allows the sensor unit 102 to operate at relatively higher sensitivity without producing excess false alarms.

Use of one or more, or combined use of two or more, of the techniques disclosed above, (e.g., variable threshold, temperature compensation, multi-threshold calibration, tend analysis, fans, etc.) allows the sensor unit 102 to operate relatively reliably at relatively higher sensitivities than prior art sensor units. The ability to operate relatively reliably at higher sensitivities (e.g., to detect smoke at lower concentrations without generating an unacceptable number of false alarms) allows the system 100 to detect fires or other dangerous conditions more quickly and with greater accuracy than prior art systems.

It will be evident to those skilled in the art that the invention is not limited to the details of the foregoing illustrated embodiments and that the present invention may be embodied in other specific forms without departing from the spirit or essential attributed thereof; furthermore, various omissions, substitutions and changes may be made without departing from the spirit of the invention. For example, although specific embodiments are described in terms of the 900 MHz frequency band, one of ordinary skill in the art will recognize that frequency bands above and below 900 MHz can be used as well. The wireless system can be configured to operate on one or more frequency bands, such as, for example, the HF band, the VHF band, the UHF band, the Microwave band, the Millimeter wave band, etc. One of ordinary skill in the art will further recognize that techniques other than spread spectrum can also be used. The modulation is not limited to any particular modulation method, such that modulation scheme used can be, for example, frequency modulation, phase modulation, amplitude modulation, combinations thereof, etc. The foregoing description of the embodiments is, therefore, to be considered in all respects as illustrative and not restrictive, with the scope of the invention being delineated by the appended claims and their equivalents. 

What is claimed is:
 1. A sensor unit, comprising: at least one sensor configured to measure an ambient condition; a controller, said controller configured to operate said at least one sensor to obtain measurement data related to said ambient condition, said controller configured to compute an alert level at least in part from said measurement data, said controller configured to report at least a portion of said measurement data when said alert level exceeds a threshold; and a fan provided to said controller, said fan configured to improve ambient air exchange with said at least one sensor, said controller configured to operate said fan in connection with said at least one sensor to improve a responsiveness of said at least one sensor to changes in said ambient conditions; wherein said controller is configured to operated said fan in response to one or more commands from a monitoring system that monitors a plurality of sensor units, said monitoring system configured to send said one or more commands in response to smoke detection by a second sensor unit. 